perm filename MASTER.SAI[GEM,HE]1 blob sn#102675 filedate 1974-06-07 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00005 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	ENTRY BEGIN "MASTER"
C00005 00003
C00007 00004	
C00008 00005	
C00009 ENDMK
C⊗;
ENTRY; BEGIN "MASTER"

	REQUIRE "SYS:GLBSG7" SEGMENT_FILE;
	REQUIRE "MESGEM" SEGMENT_NAME;
	REQUIRE "ABBREV[SYS,BGB]" SOURCE_FILE;

GLOBAL ITG RESULT;
ITG JOB,QJOB1,QJOB2;	α SLAVE'S JOB NUMBER;
INTERNAL INTEGER ISSFLG;	α ISSUE CONTROL FLAGS;

	DEFINE FMSUBR="FORWARD MESSAGE PROCEDURE";
	DEFINE IISUBR="INTERNAL INTEGER SIMPLE PROCEDURE";
	DEFINE ⊂⊂="BEGIN ISSUE(ISSFLG,""MASTER"",""SLAVE"",MESSAGE";
	DEFINE ⊃⊃=");RETURN(RESULT);END";

FMSUBR !GEODPY;IISUBR GEODPY;⊂⊂ !GEODPY ⊃⊃;
FMSUBR !SHOW1(ITG W,G);IISUBR SHOW1(ITG W,G);⊂⊂ !SHOW1(W,G) ⊃⊃;
FMSUBR !SHOW2(ITG W,G);IISUBR SHOW2(ITG W,G);⊂⊂ !SHOW2(W,G) ⊃⊃;

FMSUBR !MKCUBE(REAL A,B,C);IISUBR MKCUBE(REAL A,B,C);⊂⊂ !MKCUBE(A,B,C) ⊃⊃;
FMSUBR !MKCYLN(REAL A,B,C);IISUBR MKCYLN(REAL A,B,C);⊂⊂ !MKCYLN(A,B,C) ⊃⊃;
FMSUBR !MKBALL(REAL A,B,C);IISUBR MKBALL(REAL A,B,C);⊂⊂ !MKBALL(A,B,C) ⊃⊃;

FMSUBR !TRANSL(ITG Q;REAL A,B,C);IISUBR TRANSL(ITG Q;REAL A,B,C);⊂⊂ !TRANSL(Q,A,B,C) ⊃⊃;
FMSUBR !ROTATE(ITG Q;REAL A,B,C);IISUBR ROTATE(ITG Q;REAL A,B,C);⊂⊂ !ROTATE(Q,A,B,C) ⊃⊃;
FMSUBR !SHRINK(ITG Q;REAL A,B,C);IISUBR SHRINK(ITG Q;REAL A,B,C);⊂⊂ !SHRINK(Q,A,B,C) ⊃⊃;

FMSUBR !INB3D(STRING S);IISUBR INB3D(STRING S);⊂⊂ !INB3D(S) ⊃⊃;
FMSUBR !INCAM(STRING S);IISUBR INCAM(STRING S);⊂⊂ !INCAM(S) ⊃⊃;
FMSUBR !FDNAME(STRING S);IISUBR FDNAME(STRING S);⊂⊂ !FDNAME(S) ⊃⊃;


FMSUBR !ECW(ITG E,FV);IISUBR ECW(ITG E,FV);⊂⊂ !ECW(E,FV) ⊃⊃;
FMSUBR !ECCW(ITG E,FV);IISUBR ECCW(ITG E,FV);⊂⊂ !ECCW(E,FV) ⊃⊃;
FMSUBR !OTHER(ITG E,FV);IISUBR OTHER(ITG E,FV);⊂⊂ !OTHER(E,FV) ⊃⊃;

FMSUBR !VCW (ITG E,F);IISUBR VCW (ITG E,F);⊂⊂ !VCW (E,F) ⊃⊃;
FMSUBR !VCCW(ITG E,F);IISUBR VCCW(ITG E,F);⊂⊂ !VCCW(E,F) ⊃⊃;
FMSUBR !FCW (ITG E,V);IISUBR FCW (ITG E,V);⊂⊂ !FCW (E,V) ⊃⊃;
FMSUBR !FCCW(ITG E,V);IISUBR FCCW(ITG E,V);⊂⊂ !FCCW(E,V) ⊃⊃;

FMSUBR !BDET(ITG Q);IISUBR BDET(ITG Q);⊂⊂ !BDET(Q) ⊃⊃;
FMSUBR !BATT(ITG Q1,Q2);IISUBR BATT(ITG Q1,Q2);⊂⊂ !BATT(Q1,Q2) ⊃⊃;
FMSUBR !INVERT(ITG E);IISUBR INVERT(ITG E);⊂⊂ !INVERT(E) ⊃⊃;
FMSUBR !EVERT(ITG Q);IISUBR EVERT(ITG Q);⊂⊂ !EVERT(Q) ⊃⊃;

FMSUBR !MKBFV;IISUBR MKBFV;⊂⊂ !MKBFV ⊃⊃;
FMSUBR !MKEV(ITG F,V);IISUBR MKEV(ITG F,V);⊂⊂ !MKEV(F,V) ⊃⊃;
FMSUBR !ESPLIT(ITG E);IISUBR ESPLIT(ITG E);⊂⊂ !ESPLIT(E) ⊃⊃;
FMSUBR !MKFE(ITG V1,F,V2);IISUBR MKFE(ITG V1,F,V2);⊂⊂ !MKFE(V1,F,V2) ⊃⊃;
FMSUBR !GLUEE(ITG F1,V1,F2,V2);IISUBR GLUEE(ITG F1,V1,F2,V2);⊂⊂ !GLUEE(F1,V1,F2,V2) ⊃⊃;

FMSUBR !KLBFEV(ITG Q);IISUBR KLBFEV(ITG Q);⊂⊂ !KLBFEV(Q) ⊃⊃;
FMSUBR !SWEEP(ITG F,FLG);IISUBR SWEEP(ITG F,FLG);⊂⊂ !SWEEP(F,FLG) ⊃⊃;
FMSUBR !MKCOPY(ITG Q);IISUBR MKCOPY(ITG Q);⊂⊂ !MKCOPY(Q) ⊃⊃;


IISUBR MKUNIV;
BEGIN "MKUNIV"
	ITG I,CHR;
	STRING STR;
	ISSFLG ← 7;
	I ← PTYGET;
	PTOSTR(I,"L SAI.BGB"&13&10);
	PTYSTR(I,10);
	PTYSTR(I," ");
	STR←PTYSTR(I,"↑");
	JOB ← INTSCAN(STR,CHR);
OUTSTR(9&"THE SLAVE'S JOB # IS "&CVS(JOB)&13&10);
	PTYSTR(I,".");
	PTOSTR(I,"RU SLAVE[SAI,BGB]"&13&10);
	PTYSTR(I,"*");
	RETURN(0);
END "MKUNIV";

IISUBR LAC (ITG Q);
START_CODE "LAC"
	HRRO -1('17);MOVEM QJOB1;	α FROM: XWD -1,ADDR;
	MOVEI 1;MOVEM QJOB2;		α  TO:	ACCUMULATOR 1;
	MOVEI JOB;'47000400050;JFCL;	α JOBRD UUO;
END "LAC";

IISUBR CAR (ITG Q);
START_CODE "CAR"
	HRRO -1('17);MOVEM QJOB1;	α FROM: XWD -1,ADDR;
	MOVEI 1;MOVEM QJOB2;		α  TO:	ACCUMULATOR 1;
	MOVEI JOB;'47000400050;JFCL;	α JOBRD UUO;
	HLRZ 1,1;
END "CAR";

IISUBR CDR (ITG Q);
START_CODE "CDR"
	HRRO -1('17);MOVEM QJOB1;	α FROM: XWD -1,ADDR;
	MOVEI 1;MOVEM QJOB2;		α  TO:	ACCUMULATOR 1;
	MOVEI JOB;'47000400050;JFCL;	α JOBRD UUO;
	HRRZ 1,1;
END "CDR";

END "MASTER";